package dao.inte;

import domain.shop.Product;

import java.util.List;
import java.util.Set;

public interface ProductRepository extends AbstractEntityRepositoryInterface<Product> {

    Product create() throws Exception;

    List<Product> findAllByCategory(Long categoryId);

    Set<Product> findRelatedProductsByProductId(final Long productId);

    List<Product> findProductsContainingEntryCarType(String carType);

    List<Product> findProductsByIdLike(Long input);

    Iterable<Product> findProducts(int first, int count, String property, boolean ascending);

    int count();
}
